package com.wrial.utils;
/*
 * @Author  Wrial
 * @Date Created in 16:09 2020/8/15
 * @Description
 * 小团最近对逆序数（将一个数字逐位逆序，例如1234的逆序数为4321）特别感兴趣，但是又觉得普通的逆序数问题有点太乏味了。

于是他想出了一个新的定义：如果一个数的4倍恰好是它的逆序数，那么称这两个数是新定义下的逆序对。

接下来给定一正整数n，问：不超过n的正整数中有多少对新定义下的逆序对？
 */

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main1 {
    public static void main(String[] args) {

        int count = 0;
        List<Integer> ans = new ArrayList<>();
        List<Integer> revAns = new ArrayList<>();
        Scanner sc = new Scanner(System.in);
        int bound = sc.nextInt();
        if (bound==0) System.out.println(0);
        for (int i = 1; i <= bound / 4; i++) {
            StringBuilder sb = new StringBuilder();
            StringBuilder reverse = sb.append(i).reverse();
            int value = Integer.parseInt(reverse.toString());
            if (i * 4 < bound && value==i*4) {
                count++;
                ans.add(i);
                revAns.add(value);
            }
        }
        System.out.println(count);
        for (int i = 0; i < ans.size(); i++) {
            System.out.println(ans.get(i)+" "+revAns.get(i));
        }
    }
}
